package com.anlogic.sdk.app.handlers;

import org.eclipse.cdt.core.templateengine.process.ProcessFailureException;
import org.eclipse.cdt.managedbuilder.core.BuildException;
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
import org.eclipse.core.resources.IProject;

import com.anlogic.sdk.tools.IBspTool;

public interface IProjectHandler {
	IConfiguration[] createConfigurations();
	
	IConfiguration[] getConfigurations(IProject project);
	
	void setProjectSettings(IProject project, String projectType, String os, String arch);
	
	void setProjectToolchain(IProject project, String projectType, String os, String arch);
	
	void setLaunchConfiguration(IProject project, IProject platProj, String projectType, String os, String arch, String chipName, String procName);

	void setToolchainOptions(IBspTool bspTool, IProject project, IProject platProj, String appName, String chipName, String os, String arch, IConfiguration config) throws BuildException, ProcessFailureException;
	
	void updatePreBuildStep(IConfiguration config);
}
